package com.study.mike.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.study.mike.model.dto.ContractDTO;
import com.study.mike.model.dto.PageDTO;
import com.study.mike.model.entity.ContractDO;
import com.study.mike.model.po.DeleteBatchPO;
import com.study.mike.model.po.SaveOrUpdateContractPO;
import com.study.mike.model.query.ContractQuery;

/**
 * @author KangHui
 * @Date 2023/9/20 15:53
 */
public interface ContractService extends IService<ContractDO> {
    /**
     * saveOrUpdateContract
     *
     * @param po
     * @return
     */
    Boolean saveOrUpdate(SaveOrUpdateContractPO po);


    /**
     * queryContract
     *
     * @param po
     * @return
     */
    PageDTO<ContractDTO> queryContract(ContractQuery po);


    /**
     * contractInfo
     *
     * @param po
     * @return
     */
    ContractDTO contractInfo(ContractQuery po);

    /**
     * deleteBatch
     *
     * @param po
     * @return
     */
    Boolean deleteBatch(DeleteBatchPO po);

    /**
     * export
     *
     * @param po
     * @return
     */
    String export(ContractQuery po);

    /**
     * import
     *
     * @return
     */
    Boolean importContract();


}
